home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-1.iso / editor / aspell20.zip / SUGDIALG.PAS < prev   
Pascal/Delphi Source File  |  1996-01-15  |  3KB  |  115 lines

  1. unit Sugdialg;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, StdCtrls;
  8.  
  9. type
  10.   TSugDialog = class(TForm)
  11.     NotWord: TEdit;
  12.     SuggestList: TListBox;
  13.     BtnReplace: TButton;
  14.     BtnIgnore: TButton;
  15.     BtnAdd: TButton;
  16.     BtnSuggest: TButton;
  17.     BtnCancel: TButton;
  18.     WordEdit: TEdit;
  19.     Label1: TLabel;
  20.     Label2: TLabel;
  21.     BtnIgnoreAll: TButton;
  22.     BtnChangeAll: TButton;
  23.     BtnPhoneme: TButton;
  24.     procedure BtnSuggestClick(Sender: TObject);
  25.     procedure BtnPhonemeClick(Sender: TObject);
  26.     procedure BtnReplaceClick(Sender: TObject);
  27.     procedure BtnIgnoreClick(Sender: TObject);
  28.     procedure BtnAddClick(Sender: TObject);
  29.     procedure BtnCancelClick(Sender: TObject);
  30.     procedure SuggestListClick(Sender: TObject);
  31.     procedure SuggestListDblClick(Sender: TObject);
  32.     procedure BtnIgnoreAllClick(Sender: TObject);
  33.     procedure BtnChangeAllClick(Sender: TObject);
  34.     procedure WordEditKeyPress(Sender: TObject; var Key: Char);
  35.   private
  36.     { Private declarations }
  37.   public
  38.     { Public declarations }
  39.     DictDataPtr : pointer;    { Pointer to internal dictionary data }
  40.     MaxSuggest : byte;        { Maximum number of suggestions }
  41.   end;
  42.  
  43. var
  44.   SugDialog: TSugDialog;
  45.  
  46. implementation
  47.  
  48. {$R *.DFM}
  49.  
  50. uses BaseASpl;
  51.  
  52. procedure TSugDialog.BtnSuggestClick(Sender: TObject);
  53. begin
  54.   { Build a new list of suggestions using the CloseMatch routine }
  55.   SuggestList.Items := BaseASpl.SuggestCloseMatch(DictDataPtr, WordEdit.Text, MaxSuggest);
  56. end;
  57.  
  58. procedure TSugDialog.BtnPhonemeClick(Sender: TObject);
  59. begin
  60.   { Build a new list of suggestions using the Phoneme routine }
  61.   SuggestList.Items := BaseASpl.SuggestPhoneme(DictDataPtr, WordEdit.Text, MaxSuggest);
  62. end;
  63.  
  64.  
  65. procedure TSugDialog.BtnReplaceClick(Sender: TObject);
  66. begin
  67.   ModalResult := 101;  { Close dialog and return value }
  68. end;
  69.  
  70. procedure TSugDialog.BtnIgnoreClick(Sender: TObject);
  71. begin
  72.   ModalResult := 103;  { Close dialog and return value }
  73. end;
  74.  
  75. procedure TSugDialog.BtnAddClick(Sender: TObject);
  76. begin
  77.   ModalResult := 102;  { Close dialog and return value }
  78. end;
  79.  
  80. procedure TSugDialog.BtnCancelClick(Sender: TObject);
  81. begin
  82.   ModalResult := 100;   { Close dialog and return value }
  83. end;
  84.  
  85. procedure TSugDialog.SuggestListClick(Sender: TObject);
  86. begin
  87.   { Make the word clicked in the listbox the selected word }
  88.   WordEdit.Text := SuggestList.Items.Strings[SuggestList.ItemIndex];
  89. end;
  90.  
  91. procedure TSugDialog.SuggestListDblClick(Sender: TObject);
  92. begin
  93.   { Get the double clicked word }
  94.   WordEdit.Text := SuggestList.Items.Strings[SuggestList.ItemIndex];
  95.   ModalResult := 101;   { Close dialog and return Replace's code }
  96. end;
  97.  
  98. procedure TSugDialog.BtnIgnoreAllClick(Sender: TObject);
  99. begin
  100.   ModalResult := 104;  { Close dialog and return value }
  101. end;
  102.  
  103. procedure TSugDialog.BtnChangeAllClick(Sender: TObject);
  104. begin
  105.   ModalResult := 105;  { Close dialog and return value }
  106. end;
  107.  
  108. procedure TSugDialog.WordEditKeyPress(Sender: TObject; var Key: Char);
  109. begin
  110.   if key = #13 then
  111.     ModalResult := 101;  { Treat ENTER in WordEdit as pressing the Change button }
  112. end;
  113.  
  114. end.
  115.